﻿using MiniFox.Infrastructure;
using MiniFox.Infrastructure.Attributes;
using Newtonsoft.Json;
using System.ComponentModel.DataAnnotations;

namespace Sys.Core.Models.Queries
{
    public class SignInQuery
    {
        [TargetProperty("LoginName, SecEmail, Cellphone, DisplayName", QueryOperation.Contain), JsonProperty("keyword")]
        public string? Keyword { get; set; }
        [TargetProperty("IPAddress", QueryOperation.Contain), JsonProperty("clientIp")]
        public string? ClientIP { get; set; }
        [TargetProperty("SignInTime", QueryOperation.GreaterThanOrEqual)]
        [JsonProperty("beginTime")]
        public DateTime? BeginTime { get; set; }
        [TargetProperty("SignInTime", QueryOperation.LessThanOrEqual)]
        [JsonProperty("endTime")]
        public DateTime? EndTime { get; set; }
    }
}
